Spring Cloud | Note-1

Spring Cloud微服务 | Note(1)

2018年7月28日 14:01:02

Spring Boot 简化开发

​ 1.抛弃传统JavaEE项目繁琐的配置,学习过程

​ 2.更快入门、Spring血统、开箱即用、零配置

开启Spring Boot项目

​ 检查开发环境 采用IDEA、JDK8+、Gradle4.9、Spring Boot 2.0.3(https://start.spring.io)

​ 编译项目 > gradle build

知识点

​ 1.@RestController 用于请求Rest的Controller 包含注解@Controller & @ResponseBody

​ 2.测试@RunWith(SpringRunner.class) @SpringBootTest @AutoConfigureMockMvc

​ 3.MockMvc(测试)

1
2
3
mockMvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON))
.andExpect(status().isOk())
.andExpect(content().string(equalTo("Hello World")));

​ 4.静态方法status()/content()/equalTo()

1
2
3
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.hamcrest.Matchers.equalTo;

附录

一、目录文件解释

buildscript.gradle (代码块中脚本优先执行)

  • ext 用于定义动态属性(sprintBootVersion = ‘2.0.3 RELEASE’)
  • repositories 使用中央仓库以及spring仓库
  • dependencies 依赖关系
  • classpath 声明执行其余脚本时,ClassLoader可使用这些依赖项(可引用ext中动态属性${sprintBootVersion})
  • 使用插件
  • 指定生成编译文件版本 默认jar
  • 依赖关系(编译阶段、测试阶段)

二、Gradle

  1. 按约定声明构建和建设
  2. 强大的支持多工程的构建
  3. 强大的依赖管理(基于Apache Ivy),提供最大的便利去构建工程
  4. 全力支持已有的 Maven 或者Ivy仓库基础建设
  5. 支持传递性依赖管理,在不需要远程仓库和pom.xml和ivy配置文件的前提下
  6. 基于groovy脚本构建,其build脚本使用groovy语言编写
  7. 具有广泛的领域模型支持构建
  8. 深度 API
  9. 易迁移
  10. 自由和开放源码,Gradle是一个开源项目,基于 ASL

三、MockMvc